package tema13.ejercicio15;

import java.awt.Color;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;

public class Ej15Mina extends JButton {
	private static final long serialVersionUID = 1L;
	private int numMinasAlrededor = 0;
	private boolean esBomba = false;
	private boolean esPresionable = true;
	private int posAlto, posAncho;
	private Ej15Tablero miTablero;
	private JButton i = this;

	public Ej15Mina(int x, int y, Ej15Tablero t) {
		super();
		posAlto = x;
		posAncho = y;
		miTablero = t;

		inicializarListener();

	}

	private void inicializarListener() {
		i.addMouseListener(new MouseAdapter() {
			public void mouseClicked(MouseEvent e) {
				if (e.getButton() == 3) { // if right click
					if (esPresionable && miTablero.empezado) {
						esPresionable = false;
						i.setText("P");
						i.setForeground(Color.red);
					} else if (miTablero.empezado && i.getText().equals("P")) {
						esPresionable = true;
						i.setText("");
					}
				} else if (miTablero.empezado && esPresionable) {
					miTablero.accionMina(posAlto, posAncho);
				} else {

				}
			}
		});
	}

	public boolean getEsPresionable() {
		return esPresionable;
	}

	public void setEsPresionable(boolean esPresionable) {
		this.esPresionable = esPresionable;
	}

	public void minaAlrededor() {
		numMinasAlrededor++;
	}

	public void resetearCasilla() {
		esBomba = false;
		this.setText("");
		numMinasAlrededor = 0;
		esPresionable = true;
		i.setEnabled(true);
	}

	public int getNumMinasAlrededor() {
		return numMinasAlrededor;
	}

	public boolean getEsBomba() {
		return esBomba;
	}

	public void setEsBomba(boolean esBomba) {
		this.esBomba = esBomba;
	}

}
